import java.awt.*;
import java.awt.event.*;
//import java.net.URL;

import javax.swing.*;


/**
 * Klassen  lager et dialogvindu. Og leser inn brukernavn og passord.
 * Sjekker om det finnes en bruker som har dette brukernavnet og passordet.
 * @version 1.0
 * @author Morten og Tore
 * @since 10.04.2012
 */

public class Innlogging extends JDialog implements ActionListener{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = -855021593703369200L;
	private JButton loggInnKnapp;
	private JTextField brukernavn, passord;
	private JLabel brukernavnTekst, passordTekst;
	private Hotellvindu forelder;
	
	public Innlogging(Hotellvindu vindu) {
		
		super( vindu,"Logg inn", true);
		
		forelder = vindu;
		
		setIconImage(forelder.programIkon());
		
		setLayout(new FlowLayout());
		
		brukernavnTekst = new JLabel("Brukernavn: ");
		add(brukernavnTekst);
		
		brukernavn = new JTextField(15);
		add(brukernavn);
		
		passordTekst = new JLabel("Passord: ");
		add(passordTekst);
		
		passord = new JPasswordField(15);
		add(passord);
		
		loggInnKnapp = new JButton("Logg inn");
		add(loggInnKnapp);
		
		brukernavn.addActionListener(this);
		passord.addActionListener(this);
		loggInnKnapp.addActionListener(this);
		
		setSize(200,180);
		setLocationRelativeTo(forelder);
		setVisible(true);	
	}
	



	public void actionPerformed (ActionEvent e) {
		if(e.getSource()==brukernavn){
			passord.requestFocus();
		}
		else{
			String bnt =  brukernavn.getText();
			String po = passord.getText();		
			
			Ansatt kandidat = forelder.getHotellsystem().getBrukere().brukersjekk(bnt, po);
			
			if ( kandidat != null) {
				
				forelder.setVindutittel(kandidat);
				forelder.settFaner(kandidat);
				forelder.setVisible(true);			
				dispose();
				
			}		
			else {
				JOptionPane.showMessageDialog(this, "Feil brukernavn eller passord", "Feil", JOptionPane.ERROR_MESSAGE);
				brukernavn.setText("");
				passord.setText("");
				brukernavn.requestFocus();
			}
		}	
	}
}
